/**
 * jquery 实现版本的public.js,替换内部比较重的extjs实现版本
 * 使用静态类包装
 * @type {{ajax: ajax}}
 *
 */
/**
 * 扩展原生对象
 * @param fmt
 * @returns {*}
 * @constructor
 */
Date.prototype.Format = function (fmt) {
    var o = {
        "M+": this.getMonth() + 1, //月份
        "d+": this.getDate(), //日
        "h+": this.getHours(), //小时
        "m+": this.getMinutes(), //分
        "s+": this.getSeconds(), //秒
        "q+": Math.floor((this.getMonth() + 3) / 3), //季度
        "S": this.getMilliseconds() //毫秒
    };
    if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    for (var k in o)
        if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
    return fmt;
}

/**
 * 工具包装类
 * @type {{_ajax: _ajax, ajax: ajax, ajaxFrom: ajaxFrom, ParentKy: ParentKy, getUserToken: getUserToken}}
 */
var  tag=0;
var $tools={
    /**
     * 基础 ajax 发送 工具类
     * @param config
     * {url:请求链接地址
     *  params:附加在请求链接上，序列化输出
     *  type:["GET","POST"],默认为 "GET"
     *  async:Boolean,默认为true
     *  success:funtion(data)
     * }
     *
     */

    _ajax:function(config){
//        $.param(config);

        var defConf={
            url: "",
            context: document.body,
            params:"",
            data:"",
            async:"",
            type:"",
            success:function(){},
            timeout:40000,
            error:function(){},
            always:function(){},
            statusCode: {
                404: function() {
                    //TODO 404 error code
                },
                500:function(){
                    //TODO 500 error code
                }

            }
        };
        //将config信息克隆进入defConf
        $.extend(defConf,config);
        $.ajax(defConf)
            .done(function(resp){
                defConf.done(resp);
        });
    },
    /**
     *  内部配置过的ajax
     */
    ajax:function(config){
        var base={
            type:"POST"
        }
        $.extend(config,base);
        this._ajax(config);
    },
    /**
     *
     * @param form
     * @returns {string}
     */
    ajaxFrom:function(form) {
        return "";
    },
    /**
     * get from parent window
     */

    ParentKy: function(keywords) {

    },
    getUserToken:function(){
        if(user_token && user_token != 'null') {
            return user_token;
        }
        if(window.parent && window.parent != window && window.parent.user_token) {
            return window.parent.user_token;
        }
        if(window.parent && window.parent.parent && window.parent.parent.user_token) {
            return window.parent.parent.user_token;
        }
    },
    getIEVersion:function(){
        if(navigator.appName == "Microsoft Internet Explorer" && navigator.appVersion.match(/7./i)=="7.")
        {
            return 7;
        }
        else if(navigator.appName == "Microsoft Internet Explorer" && navigator.appVersion.match(/8./i)=="8.")
        {
            return 8;
        }
        else if(navigator.appName == "Microsoft Internet Explorer" && navigator.appVersion.match(/9./i)=="9.")
        {
            return 9;
        }
        else if(navigator.appName == "Microsoft Internet Explorer")
        {
            return 6;
        }else {
            //对于10以上都认为是标准的
            return 10;
        }
    }
}

var $Cache={
    get:function(){

    },
    set:function(){

    },
    gSet:function(){

    },
    gGet:function(){

    }
}

